import { Injectable } from '@angular/core';
import { HttpClientService } from '../../../services/http-client.service';
import { Http } from '@angular/http';
import * as moment from 'moment';

@Injectable()
export class ExtractionService {

	constructor(
		public httpClient: HttpClientService,
		public http: Http
	) { }

	// 条目抽取列表
	getExtractList(getBody) {
		return this.httpClient.post('/pms/v1/item/getPagePensionItem', getBody);
	}
	//更新-服务条目审核撤销
	revoke(nFundNo) {
		return this.httpClient.put('/pms/v1/item/serItemAudit/serItemAuditCancel?nFundNo=' + nFundNo);
	}
	//列表导出,postUrl为请求地址,postBody为请求体,operate为导出文件名
	exportTarget(postUrl, postBody, operate) {
		let today = moment().format('YYYY-MM-DD');
		this.http.post(postUrl, postBody, { responseType: 3 }).map(res => res.json()).subscribe(res => {
			// let blob = new Blob([res], { type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" });
			// let blob = new Blob([res], { type: "application/vnd.ms-excel" });
			let blob = new Blob([res], { type: "application/msexcel;charset=UTF-8" });
			if (window.navigator.msSaveOrOpenBlob) {
				navigator.msSaveBlob(blob, operate + today + '.xls');
			} else {
				let resUrl = URL.createObjectURL(blob);
				let a = document.createElement('a');
				document.body.appendChild(a);
				a.setAttribute('style', 'display:none');
				a.setAttribute('href', resUrl);
				a.setAttribute('download', operate + today + '.xls');
				a.click();
				// 释放url
				URL.revokeObjectURL(resUrl);
			}
		})
	}

}